import { ApiProperty } from '@midwayjs/swagger';

// Create DTO
export class DPChangeSampleDetailCreateDto {

  @ApiProperty({
    description: 'CHID字段，用于关联',
    example: 1,
  })
  CHID: number;

  @ApiProperty({
    description: '文件A名称',
    example: '128_0A.tif',
  })
  NameA: string;

  @ApiProperty({
    description: '文件B名称',
    example: '128_0B.tif',
  })
  NameB: string;

  @ApiProperty({
    description: '文件L名称',
    example: '128_0L.tif',
  })
  NameL: string;

  @ApiProperty({
    description: '创建时间',
    example: '2025-02-05T11:09:15Z',
  })
  CreateTime: Date;  // Use string or Date as required
}

// Update DTO
export class DPChangeSampleDetailUpdateDto {

  @ApiProperty({
    description: '样本ID',
    example: 1,
  })
  OBJID: number;

  @ApiProperty({
    description: 'CHID字段，用于关联',
    example: 1,
  })
  CHID?: number;

  @ApiProperty({
    description: '文件A名称',
    example: '128_0A.tif',
  })
  NameA?: string;

  @ApiProperty({
    description: '文件B名称',
    example: '128_0B.tif',
  })
  NameB?: string;

  @ApiProperty({
    description: '文件L名称',
    example: '128_0L.tif',
  })
  NameL?: string;

  @ApiProperty({
    description: '创建时间',
    example: '2025-02-05T11:09:15Z',
  })
  CreateTime?: Date;  // Optional since it might not need to be updated
}

// Query DTO
export class DPChangeSampleDetailQueryDto {

  @ApiProperty({
    description: 'CHID字段，用于关联',
    example: 1,
  })
  CHID?: number;

  @ApiProperty({
    description: '当前页码',
    example: 1,
  })
  page: number = 1;  // Default page number

  @ApiProperty({
    description: '每页显示的数量',
    example: 10,
  })
  limit: number = 10; // Default number of items per page
}

// Delete DTO
export class DPChangeSampleDetailDeleteDto {

  @ApiProperty({
    description: '样本ID',
    example: 1,
  })
  OBJID: number;
}
